<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>计算属性</title>
		<script src="https://cdn.jsdelivr.net/npm/vue@2.6.14/dist/vue.js"></script>
	</head>
	<body>
		<div id="box">
			姓名: <input type="text" v-model="name"> <br>
			公司名: <input type="text" v-model="company"> <br>
			<!-- 页面去调用方法 -->
			<h1>{{ email }}</h1>
			<h1>{{ email }}</h1>
			<h1>{{ email }}</h1>
			<h1>{{ email }}</h1>
			<h1>{{ email }}</h1>
			<h1>{{ email }}</h1>
		</div>
		<script type="text/javascript">
			/**
			 * 计算属性：
			 * 		多出调用只会执行一次，方法会执行多次，使用计算属性可以提高代码运行效率，节省消耗。
			 * 		和methods对比，最大的好处是计算属性有缓存机制。
			 * */
			const vm = new Vue({
				el:'#box',
				data:{
					name:'',
					company:''
				},
				//计算属性
				computed:{
					//计算属性的名称
					// email:{
					// 	//当有人使用时去调用
					// 	get(){
					// 		console.log("我被执行了");
					// 		return this.name + "@" + this.company + ".com"
					// 	}
					// }
					
					//第二种写法
					email:function(){
						console.log("我被执行了");
						return this.name + "@" + this.company + ".com"
					}
				}
			})
		</script>
	</body>
</html>
